﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using MJM.RPP.EntidadesNegocio;
using MJM.CBD.Conn;

namespace MJM.RPP.AccesoDatos
{
    public class DocsAreaAD
    {
        public List<DocsAreaEN> Listar(int IDArea,String Fecha1,String Fecha2)
        {
            List<DocsAreaEN> lst = new List<DocsAreaEN>();
            SqlConnection conn=new SqlConnection(Cadena.CadenaTramite());
            SqlCommand cmd = new SqlCommand("sp_s_M_MAES_DOCU_Seguimiento_DOCUOFI_V3", conn);
            cmd.CommandType = CommandType.StoredProcedure;
            SqlParameter prmFecha1,prmFecha2,prmIDArea;
            SqlDataReader dr;
            DocsAreaEN objDocsAreaEN;
            try
            {
                prmIDArea = new SqlParameter();
                prmIDArea.ParameterName = "@vOFIC_P_inCODOFI";
                prmIDArea.SqlDbType = SqlDbType.Int;
                prmIDArea.Value = IDArea;
                cmd.Parameters.Add(prmIDArea);

                prmFecha1 = new SqlParameter();
                prmFecha1.ParameterName = "@vDOCU_chFECDOCA";
                prmFecha1.SqlDbType = SqlDbType.VarChar;
                prmFecha1.Value = Fecha1;
                cmd.Parameters.Add(prmFecha1);

                prmFecha2 = new SqlParameter();
                prmFecha2.ParameterName = "@vDOCU_chFECDOCB";
                prmFecha2.SqlDbType = SqlDbType.VarChar;
                prmFecha2.Value = Fecha2;
                cmd.Parameters.Add(prmFecha2);
                cmd.Connection.Open();
                dr = cmd.ExecuteReader();

                while (dr.Read())
                {
                    objDocsAreaEN = new DocsAreaEN();
                    objDocsAreaEN.IDArea = IDArea;
                    objDocsAreaEN.Fecha = dr.GetString(0);
                    objDocsAreaEN.FechaMod = objDocsAreaEN.Fecha.Substring(6, 4) + objDocsAreaEN.Fecha.Substring(3, 2) + objDocsAreaEN.Fecha.Substring(0, 2);
                    objDocsAreaEN.Key = objDocsAreaEN.FechaMod + objDocsAreaEN.IDArea.ToString();
                    lst.Add(objDocsAreaEN);
                }

                cmd.Connection.Close();
                conn.Dispose();
                cmd.Dispose();
            }
            catch (Exception ex)
            {                
                conn.Dispose();
                cmd.Dispose();
            }

            return lst;
        }
                
    }
}
